#ifndef _CSP_PROCESS_H
#define _CSP_PROCESS_H

#include <ProcessTerminationEvent.h>
#include <ProcessComposition.h>
#include <string>

using namespace std;

class CSPProcess
{
	public:
		CSPProcess(string menmonic);
		int Run();
		string & GetMnemonic();

		ProcessComposition* GetProcessComposition(){
			return p_comp;
		}

	private:
		ProcessComposition *p_comp;
		ProcessTerminationEvent *p_event;
		void Failure();
		string mnemonic;
		bool isRun;
};

#endif
